Touch systems are well known in the art and typically include a touch screen having a touch surface on which contacts are made using a pointer. Pointer contacts with the touch surface are detected and are used to generate corresponding output pointer position data representing areas of the touch surface where the pointer contacts are made. There are basically two general types of touch systems available and they can be broadly classified as “active” touch systems and “passive” touch systems.
Active touch systems allow a user to generate pointer position data by contacting the touch surface with a special pointer that usually requires some form of on-board power source, typically batteries. The special pointer emits signals such as infrared light, visible light, ultrasonic frequencies, electromagnetic frequencies, etc. that activate the touch surface.
Passive touch systems allow a user to generate pointer position data by contacting the touch surface with a passive pointer and do not require the use of special pointers in order to activate the touch surface. A passive pointer can be a finger, a cylinder of some material, or any other suitable object that can be used to contact some predetermined area of interest on the touch surface. Since special active pointers are not necessary in passive touch systems, battery power levels and/or pointer damage, theft or pointer misplacement are of no concern to users.
International PCT Application No. PCT/CA01/00980 filed on Jul. 5, 2001 and published under No. WO 02/03316 on Jan. 10, 2002, assigned to the assignee of the present invention, discloses a camera-based touch system comprising a touch screen that includes a touch surface on which a computer-generated image is presented. A rectangular bezel or frame surrounds the touch surface and supports digital cameras at its corners. The digital cameras have overlapping fields of view that encompass and look along the touch surface. The digital cameras acquire images from different locations and generate image data. The image data acquired by the cameras is processed by digital signal processors to determine if a pointer exists in the captured image data. When it is determined that a pointer exists in the captured image data, the digital signal processors convey pointer characteristic data to a master controller, which in turn processes the pointer characteristic data to determine the location of the pointer relative to the touch surface using triangulation. The pointer location data is conveyed to a computer executing one or more application programs. The computer uses the pointer location data to update the computer-generated image that is presented on the touch surface. Pointer contacts on the touch surface can therefore be recorded as writing or drawing or used to control execution of application programs executed by the computer.
In this passive camera-based touch system and in fact in all touch systems, the mechanism generating the image for display on the touch surface is distinct and separate from the mechanism that provides the touch capability. As a result, the co-ordinate system of the touch screen is different than the co-ordinate system of the image generator. In order for the touch system to maintain the desired high resolution, the touch system co-ordinate system must be properly mapped to the co-ordinate system of the image generator. This co-ordinate system mapping is typically performed through an alignment procedure requiring manual intervention.
For example, U.S. Pat. No. 5,448,263 to Martin, assigned to SMART Technologies, Inc., assignee of the present invention, discloses a passive touch system coupled to a computer that executes an alignment routine to enable the co-ordinate system of the touch screen to be mapped to the co-ordinate system of the computer display. During the alignment routine, reference marks at known computer display co-ordinates are displayed on the touch surface of the touch screen and the user is prompted to touch the reference marks with a pointer. In response to the pointer contacts, the touch screen outputs pointer position data representing the specific locations on the touch surface where the pointer contacts are made. The pointer position data output by the touch screen is conveyed to the computer. Since the display co-ordinates of the reference marks are known, the computer can use the pointer position data output by the touch screen to map the computer display co-ordinate system to the touch screen co-ordinate system.
Although this alignment routine enables the computer display co-ordinate system to be mapped to the touch screen co-ordinate system, executing such an alignment routine is inconvenient and can be annoying especially in touch systems where a stand alone projector is used to project the computer-generated image on the touch surface. In such a touch system, if the projector and touch screen become even slightly displaced relative to one another, the user must interrupt what they are doing and go through the alignment routine in order to re-map the computer display co-ordinate system to the touch screen co-ordinate system. As will be appreciated, improvements in touch systems to deal with alignment of computer display co-ordinate systems to touch screen co-ordinate systems are desired.
It is therefore an object of the present invention to provide a novel auto-aligning touch system and method of automatically aligning a touch system.